package com.atwisdom.star.core.dao.pojo.modelClass;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class BaseInstance extends BaseTable {
    /**
     * 实例名称
     */
    @TableField(value = "name")
    public String name;

    /**
     * 属性信息
     */
    @TableField(value = "insValues",typeHandler = FastjsonTypeHandler.class)
    public JSONObject values;

    /**
     * 乐观锁
     */
    @TableField(value = "locked")
    public Integer lock;
    /**
     *
     */
    @TableField(value = "I0", updateStrategy = FieldStrategy.IGNORED)
    public Integer i0;

    /**
     *
     */
    @TableField(value = "I1", updateStrategy = FieldStrategy.IGNORED)
    public Integer i1;

    /**
     *
     */
    @TableField(value = "I2", updateStrategy = FieldStrategy.IGNORED)
    public Integer i2;

    /**
     *
     */
    @TableField(value = "I3", updateStrategy = FieldStrategy.IGNORED)
    public Integer i3;

    /**
     *
     */
    @TableField(value = "I4", updateStrategy = FieldStrategy.IGNORED)
    public Integer i4;

    /**
     *
     */
    @TableField(value = "I5", updateStrategy = FieldStrategy.IGNORED)
    public Integer i5;

    /**
     *
     */
    @TableField(value = "I6", updateStrategy = FieldStrategy.IGNORED)
    public Integer i6;

    /**
     *
     */
    @TableField(value = "I7", updateStrategy = FieldStrategy.IGNORED)
    public Integer i7;

    /**
     *
     */
    @TableField(value = "S0", updateStrategy = FieldStrategy.IGNORED)
    public String s0;

    /**
     *
     */
    @TableField(value = "S1")
    public String s1;

    /**
     *
     */
    @TableField(value = "S2")
    public String s2;

    /**
     *
     */
    @TableField(value = "S3")
    public String s3;

    /**
     *
     */
    @TableField(value = "S4")
    public String s4;

    /**
     *
     */
    @TableField(value = "S5")
    public String s5;

    /**
     *
     */
    @TableField(value = "S6")
    public String s6;

    /**
     *
     */
    @TableField(value = "S7")
    public String s7;

    /**
     *
     */
    @TableField(value = "D0", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d0;

    /**
     *
     */
    @TableField(value = "D1", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d1;

    /**
     *
     */
    @TableField(value = "D2", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d2;

    /**
     *
     */
    @TableField(value = "D3", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d3;

    /**
     *
     */
    @TableField(value = "D4", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d4;

    /**
     *
     */
    @TableField(value = "D5", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d5;

    /**
     *
     */
    @TableField(value = "D6", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d6;

    /**
     *
     */
    @TableField(value = "D7", updateStrategy = FieldStrategy.IGNORED)
    public BigDecimal d7;

    /**
     *
     */
    @TableField(value = "B0", updateStrategy = FieldStrategy.IGNORED)
    public boolean b0;

    /**
     *
     */
    @TableField(value = "B1")
    public boolean b1;

    /**
     *
     */
    @TableField(value = "B2")
    public boolean b2;

    /**
     *
     */
    @TableField(value = "B3")
    public boolean b3;

    /**
     *
     */
    @TableField(value = "B4")
    public boolean b4;

    /**
     *
     */
    @TableField(value = "B5")
    public boolean b5;

    /**
     *
     */
    @TableField(value = "B6")
    public boolean b6;

    /**
     *
     */
    @TableField(value = "B7")
    public boolean b7;

    /**
     *
     */
    @TableField(value = "T0", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t0;

    /**
     *
     */
    @TableField(value = "T1", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t1;

    /**
     *
     */
    @TableField(value = "T2", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t2;

    /**
     *
     */
    @TableField(value = "T3", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t3;

    /**
     *
     */
    @TableField(value = "T4", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t4;

    /**
     *
     */
    @TableField(value = "T5", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t5;

    /**
     *
     */
    @TableField(value = "T6", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t6;

    /**
     *
     */
    @TableField(value = "T7", updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    public Date t7;

    /**
     *
     */
    @TableField(value = "ST0")
    public String st0;

    /**
     *
     */
    @TableField(value = "ST1")
    public String st1;

    /**
     *
     */
    @TableField(value = "ST2")
    public String st2;

    /**
     *
     */
    @TableField(value = "ST3")
    public String st3;

    /**
     *
     */
    @TableField(value = "ST4")
    public String st4;

    /**
     *
     */
    @TableField(value = "ST5")
    public String st5;

    /**
     *
     */
    @TableField(value = "ST6")
    public String st6;

    /**
     *
     */
    @TableField(value = "ST7")
    public String st7;

    /**
     *
     */
    @TableField(value = "ST8")
    public String st8;

    /**
     *
     */
    @TableField(value = "ST9")
    public String st9;

    /**
     *
     */
    @TableField(value = "ST10")
    public String st10;
    /**
     *
     */
    @TableField(value = "ST11")
    public String st11;

    /**
     *
     */
    @TableField(value = "ST12")
    public String st12;

    /**
     *
     */
    @TableField(value = "ST13")
    public String st13;

    /**
     *
     */
    @TableField(value = "ST14")
    public String st14;
}
